package com.gopay.remote.bank.businesses;

import com.gopay.common.domain.bank.BaseMessage;
import com.gopay.common.exception.GopayException;

public interface CmbcScanPayService extends ScanPayService {
	
	 /**
     * 商户入驻
     * @date 2016-11-21
     * @param BaseMessage
     * @return Object
     * @throws GopayException
     */
    public Object merchantSettled(BaseMessage baseMsg) throws GopayException;
    
    /**
	 * 商户查询
	 * @param msg 请求对象
	 * @return Object
	 * @throws com.gopay.common.exception.GopayException
	 */
	public Object merchantQuery(BaseMessage msg) throws GopayException;
	
	/**
	 * 商户修改
	 * @param msg 请求对象
	 * @return Object
	 * @throws com.gopay.common.exception.GopayException
	 */
	public Object merchantModify(BaseMessage msg) throws GopayException;
    
    /**
     * 获取对账文件
     * 
     * @param BaseMessage
     * @return Object
     * @throws GopayException
     */
    public Object getCheckAccountFile(BaseMessage baseMsg) throws GopayException;
    
    /**
	 * 
	 * 功能描述：商户微信公众号配置及授权目录配置
	 *
	 * @param msg
	 * @return
	 * @throws GopayException
	 * 
	 * @author 宣广海
	 *
	 * @since 2017年7月19日
	 *
	 * @update:[变更日期YYYY-MM-DD][更改人姓名][变更描述]
	 */
    Object merchantOperation(BaseMessage msg) throws GopayException;
	/**
	 * 
	 * 功能描述：商户微信公众号配置及授权目录配置结果查询接口
	 *
	 * @param msg
	 * @return
	 * @throws GopayException
	 * 
	 * @author 宣广海
	 *
	 * @since 2017年7月19日
	 *
	 * @update:[变更日期YYYY-MM-DD][更改人姓名][变更描述]
	 */
    Object merchantOperationQuery(BaseMessage msg) throws GopayException;

}
